package cn.fl.grpcfg.transform;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.grpcfg.vo.SplGrpRelInfoVO;
import fl.spl.facade.grpcfg.dto.SplGrpRelInfoDTO;

import java.util.ArrayList;
import java.util.List;


/**
 * @Description: 集团成员关联关系表 转换器
 * @Description: VO是客户端传递数据到服务端进行转换的数据 
 * @Description: VO转换数据变成DTO传递到服务端 
 * @Description: VO不能在服务端出现
 */
public class SplGrpRelInfoVOTransform {


	/**
	 * DTO 转  VO
	 * @param dto SplGrpRelInfoDTO
	 * @return SplGrpRelInfoVO
	 */
	public static SplGrpRelInfoVO toVO(SplGrpRelInfoDTO dto) {
		SplGrpRelInfoVO  vo = null;
		if (dto != null) { 
			vo = new SplGrpRelInfoVO();
			vo.setId(dto.getId());
			vo.setSplGrpId(dto.getSplGrpId());//集团ID
			vo.setMemberId(dto.getMemberId());//集团成员ID
			vo.setMemberNm(dto.getMemberNm());//集团成员名称
			vo.setSplTypCd(dto.getSplTypCd());//成员类型 (1：集团  2：经销商 3：挂靠公司)
			vo.setRelTypCd(dto.getRelTypCd());//关联类型（1：关键人，2：关联地址）
			vo.setRelInfo(dto.getRelInfo());//关联信息
			vo.setRelInfoSource(dto.getRelInfoSource());//关联信息来源(“INNER”：内部，"QIANHAI"：前海)
			vo.setRelSplTypCd(dto.getRelSplTypCd());//被关联成员类型 (1：集团  2：经销商 3：挂靠公司)
			vo.setRelMemberId(dto.getRelMemberId());//被关联成员ID
			vo.setRelMemberNm(dto.getRelMemberNm());//被关联成员名称
			vo.setIsDel(dto.getIsDel());//是否删除
			vo.setIsValid(dto.getIsValid());//是否有效
			vo.setIsNew(dto.getIsNew());//是否最新

			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param vo SplGrpRelInfoVO
	 * @return SplGrpRelInfoDTO
	 */
	public static SplGrpRelInfoDTO toDTO(SplGrpRelInfoVO vo) {
		SplGrpRelInfoDTO dto = null;
		if (vo != null) {
			dto = new SplGrpRelInfoDTO();
			dto.setId(vo.getId());
			dto.setSplGrpId(vo.getSplGrpId());//集团ID
			dto.setMemberId(vo.getMemberId());//集团成员ID
			dto.setMemberNm(vo.getMemberNm());//集团成员名称
			dto.setSplTypCd(vo.getSplTypCd());//成员类型 (1：集团  2：经销商 3：挂靠公司)
			dto.setRelTypCd(vo.getRelTypCd());//关联类型（1：关键人，2：关联地址）
			dto.setRelInfo(vo.getRelInfo());//关联信息
			dto.setRelInfoSource(vo.getRelInfoSource());//关联信息来源(“INNER”：内部，"QIANHAI"：前海)
			dto.setRelSplTypCd(vo.getRelSplTypCd());//被关联成员类型 (1：集团  2：经销商 3：挂靠公司)
			dto.setRelMemberId(vo.getRelMemberId());//被关联成员ID
			dto.setRelMemberNm(vo.getRelMemberNm());//被关联成员名称
			dto.setIsDel(vo.getIsDel());//是否删除
			dto.setIsValid(vo.getIsValid());//是否有效
			dto.setIsNew(vo.getIsNew());//是否最新

			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
		}
		return dto;
	}

	 /**
	  * DTO集合 转 VO集合
	  * @param list List<SplGrpRelInfoDTO>
	  * @return List<SplGrpRelInfoVO>
	  */
	 public static List<SplGrpRelInfoVO> toVOList(List<SplGrpRelInfoDTO> list) {
		 List<SplGrpRelInfoVO>  voList = new ArrayList<SplGrpRelInfoVO>();
		 if(CollectionUtils.isNotEmpty(list)){
			 for (SplGrpRelInfoDTO dto : list) {
				 voList.add(toVO(dto));
			 }
		 }
		 return voList;
	 }

	 /**
	  * VO集合 转 DTO集合
	  * @param list List<SplGrpRelInfoVO>
	  * @return List<SplGrpRelInfoDTO>
	  */
	 public static List<SplGrpRelInfoDTO> toDTOList(List<SplGrpRelInfoVO> list) {
		 List<SplGrpRelInfoDTO>  dtoList = new ArrayList<SplGrpRelInfoDTO>();
		 if(CollectionUtils.isNotEmpty(list)){
			 for (SplGrpRelInfoVO vo : list) {
				 dtoList.add(toDTO(vo));
			 }
		 }
		 return dtoList;
	 }
}
